package com.cdut.hwadeefsc.mapper;

import com.cdut.hwadeefsc.entity.users;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * @author 1
 * @description 针对表【users(用户表（学生和老师）)】的数据库操作Mapper
 * @createDate 2025-09-15 10:44:08
 * @Entity com.cdut.hwadeefsc.entity.users
 */
@Mapper
public interface usersMapper extends BaseMapper<users> {

    /**
     * 分页查询用户列表（支持角色和组织筛选）
     */
    IPage<users> selectUserPage(
            Page<users> page,
            @Param("role") String role,
            @Param("organizationId") Long organizationId
    );

    /**
     * 根据角色和班级查询用户列表（带分页）
     */
    IPage<users> selectByRoleAndClass(
            Page<users> page,
            @Param("role") String role,
            @Param("classId") Long classId
    );

    /**
     * 检查用户名是否已存在
     */
    Integer checkNameExists(@Param("name") String name);
}